package studiodiva.portfolio.client.model.titles;

import static studiodiva.portfolio.client.lib.lang.Lang.event;

import studiodiva.portfolio.client.lib.even.Event;
import studiodiva.portfolio.client.lib.even.HasEvents;

public interface Titles extends HasEvents, Iterable<Title> {

  public enum TitleType {
    closed, contact, done, offer
  }

  Event<Title> ON_CHANGE = event();

  Title getOpened();

  TitleType getState();

  Title getTitle(TitleType state);

  void open(TitleType viewState);
}
